package com.ruoyi.wx.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;

/**
 * 车辆日志对象 vehicles_log
 *
 * @author oy
 * @date 2022-12-13
 */
@Data
public class VehiclesLog extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 日志id */
    private Long vehicleLogId;

    /** 设备Id */
    @Excel(name = "设备Id")
    private Long deviceId;

    /** 设备号 */
    @Excel(name = "设备号")
    private String deviceNo;

    /** sim卡号 */
    @Excel(name = "sim卡号")
    private String simNo;

    /** 车辆Id */
    @Excel(name = "车辆Id")
    private Long carId;

    /** 车牌号 */
    @Excel(name = "车牌号")
    private String carNo;

    /** 人员Id */
    @Excel(name = "人员Id")
    private Long personId;

    /** 人员姓名 */
    @Excel(name = "人员姓名")
    private String personName;

    /** 分组Id */
    @Excel(name = "分组Id")
    private Long groupId;

    /** 分组名称 */
    @Excel(name = "分组名称")
    private String groupName;

    /** 数据端口号 */
    @Excel(name = "数据端口号")
    private Long devicePort;

    /** 经度（WGS-84) */
    @Excel(name = "经度", readConverterExp = "经度（WGS-84)")
    private Double x;

    /** 纬度（WGS-84) */
    @Excel(name = "纬度", readConverterExp = "纬度（WGS-84)")
    private Double y;

    /** 速度 */
    @Excel(name = "速度")
    private Long speed;

    /** 里程（km) */
    @Excel(name = "里程", readConverterExp = "里程（km)")
    private Long mileage;

    /** 油针值 */
    @Excel(name = "油针值")
    private String oilNeedle;

    /** 油量（升） */
    @Excel(name = "油量", readConverterExp = "升=")
    private Long oilVolumn;

    /** 方向（1-北，2东北，3-东，4东南，5-难，6-西南，7-西，8-西北） */
    @Excel(name = "方向", readConverterExp = "1=-北，2东北，3-东，4东南，5-难，6-西南，7-西，8-西北")
    private String direction;

    /** 方向度数 */
    @Excel(name = "方向度数")
    private Long directionDegree;

    /** GPS信号标记（0-无，1-有） */
    @Excel(name = "GPS信号标记", readConverterExp = "0=-无，1-有")
    private String flag;

    /** 发动机状态（0-关，1-开） */
    @Excel(name = "发动机状态", readConverterExp = "0=-关，1-开")
    private String accStatus;

    /** 车门状态（0-关，1开） */
    @Excel(name = "车门状态", readConverterExp = "0=-关，1开")
    private String doorStatus;

    /** 后尾箱状态（0-关，1-开） */
    @Excel(name = "后尾箱状态", readConverterExp = "0=-关，1-开")
    private String weightStatus;

    /** 寻求信息状态（0-否，1-是） */
    @Excel(name = "寻求信息状态", readConverterExp = "0=-否，1-是")
    private String seekStatus;

    /** 是否空载（0-否，1-是） */
    @Excel(name = "是否空载", readConverterExp = "0=-否，1-是")
    private String isNoLoad;

    /** 是否设防（0-否，1-是） */
    @Excel(name = "是否设防", readConverterExp = "0=-否，1-是")
    private String isFortification;

    /** 实时状态（0-未上线，1-离线，2-停车，3-行驶，4-停留，5-维修） */
    @Excel(name = "实时状态", readConverterExp = "0=-未上线，1-离线，2-停车，3-行驶，4-停留，5-维修")
    private String realTimeStatus;

    /** 状态时长 */
    @Excel(name = "状态时长")
    private String statusDuration;

    /** 车内温度 */
    @Excel(name = "车内温度")
    private String temperature;

    /** 总脉冲里程（km，采用BCD码） */
    @Excel(name = "总脉冲里程", readConverterExp = "k=m，采用BCD码")
    private Long pulseOdo;

    /** 总脉冲数（个，16进制） */
    @Excel(name = "总脉冲数", readConverterExp = "个=，16进制")
    private String pulseCount;

    /** 脉冲速度 */
    @Excel(name = "脉冲速度")
    private Long pulseSpeed;

    /** 基站局号 */
    @Excel(name = "基站局号")
    private String gsmloc;

    /** 基站蜂窝号 */
    @Excel(name = "基站蜂窝号")
    private String gsmci;

    /** 国家代号 */
    @Excel(name = "国家代号")
    private String accuracy;

    /** 事件代码 */
    @Excel(name = "事件代码")
    private String eventCode;

    /** 事件说明 */
    @Excel(name = "事件说明")
    private String eventDesc;

    /** 报警类型列表 */
    @Excel(name = "报警类型列表")
    private String[] alarmList;

    /** 报警类型字符串 */
    private String alarmLists;

    /** 车辆原始状态信息 */
    @Excel(name = "车辆原始状态信息")
    private String carStatus;

    /** gps定位时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "gps定位时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date gpsTime;

    /** 上报时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "上报时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date reportTime;

    /** 状态 */
    private String status;

    private Object extend;

}
